package com.wty.app.bthcar.utils;

import android.os.Handler;

import com.wty.app.bthcar.HavorBoardControlActivity;

public class RepeatingTask implements Runnable{

    // 使用Handler来安排任务的执行
    private Handler handler = new Handler();
    private boolean isRunning = false;
    private final int delayMillis; // 循环执行的延迟时间（毫秒）
    private OnSendListener listener;

    public RepeatingTask(int delayMillis, OnSendListener listener) {
        this.delayMillis = delayMillis;
        this.listener = listener;
    }

    @Override
    public void run() {
        // 这里是需要循环执行的代码
        // 例如，更新UI或者执行某个操作
        // ...
        if (listener!=null){
            listener.OnSend();
        }
        // 如果任务还在执行中，继续循环
        if (isRunning) {
            // 延迟一段时间后再次执行
            handler.postDelayed(this, delayMillis);
        }
    }

    // 开始循环任务
    public void start() {
        if (!isRunning) {
            isRunning = true;
            run(); // 首次执行
        }
    }

    // 终止循环任务
    public void stop() {
        isRunning = false;
    }

    public interface OnSendListener{
        void OnSend();
    }
}
